from django.db import models
from django.contrib.auth.models import User
from comunidadcyt.middleware import get_request
from django.utils.encoding import force_unicode
from comunidadcyt.gruposDeInvestigacion.models import GruposDeInvestigacion
from comunidadcyt.proyectos.models import Proyectos


class MensajesPrivados(models.Model):
   
    Asunto = models.CharField(max_length=200,default="Sin asunto")
    Mensaje = models.TextField(blank=True) 
    Remitente = models.CharField(max_length=200, editable=False) 
    Leido = models.BooleanField(default=False, editable=False)
    Enviado = models.BooleanField(default=False, editable=False)
    UsuariosDestino = models.ManyToManyField(User,related_name="mensajes",blank=True,null=True)
    GruposDestino = models.ManyToManyField(GruposDeInvestigacion,related_name="mensajes",blank=True,null=True)
    ProyectosDestino = models.ManyToManyField(Proyectos,related_name="mensajes",blank=True,null=True)
    
    def save(self, *args):
        self.Remitente=get_request().user.get_full_name()
        super(MensajesPrivados, self).save() 

    
    class Meta:
        db_table = 'MensajesPrivados' 
        ordering = ['Asunto']
        verbose_name = "Mensaje"
        
       
    def __str__(self):
        return force_unicode(self.Asunto)

    def __unicode__(self):
        return force_unicode(self.Asunto)
